﻿using System.Linq.Expressions;

namespace J.IRepository
{
    public interface IRepository<T> where T : class,new()
    {
        //添加
        Task<int> AddAsync(T item);
        //修改
        Task<int> UpdateAsync(T item);
        //删除
        Task<int> DeleteAsync(int id);
        //查询
        Task<List<T>> GetAllAsync();
        //单条件查询
        Task<T> GetModelAsync(int id);
        //多条件查询
        Task<List<T>> GetAsync(Expression<Func<T, bool>> expression);
    }
}